#ifndef outils_H
#define outils_H

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <assert.h>
#include <ctype.h>
#include <string.h>

typedef enum {Vide, Ver, Plante} te_Nourriture;
typedef enum {Rien, Petit, Moyen, Plein, Pierre} te_Etatterre;
typedef enum {Male, Femelle} te_Sexe;
typedef enum {Adulte, Jeune} te_Age;
typedef struct {te_Nourriture Nourriture; int ptNourriture; te_Etatterre eEtatterre; int eTaupes;} t_motte;
typedef struct {int ePosX; int ePosY; int eSante; te_Sexe Sexe; te_Age Age; int eGestation; int eDelaiGrossesse; } t_rattaupes;

#include "meoliste.h"

void outil_amorcer();
void outil_init();
void cmatBords (char c, int lmin, int cmin, int lmax, int cmax, char mat[lmax][cmax]);
void Alea0();
void rLigne ();
void cmatInit (char c, int lmax, int cmax, char mat[lmax][cmax]);
void ematInit (int e, int lmax, int cmax, int mat[lmax][cmax]);
void eAfficher (int entier);
void cAfficher (char caractere);
void meAfficher (char *sMessage, int eA);
void mcAfficher (char *sMessage, char cA);
void cmatAfficher (int lmin, int cmin, int lmax, int cmax, char mat[lmax][cmax]);
void ematAfficher (int lmax, int cmax, int mat[lmax][cmax]);
void espaceAfficher ();
int bCroiss (int eAv, int eM, int eAp);
int eEcrire ();
int cEcrire ();
int eHasard (int tmin, int tmax);
int zHasard (int eLimite);
int uHasard (int eMax);
int epMottenonvide (t_motte** pMotte, int elmax, int ecmax);

#endif
